﻿using System.Net.Mail;

namespace BigfootMVC.Email
{
    /// <summary>
    /// This is the interface for the abstraction of the email provider. Useful when testing as well as 
    /// when deciding to use the email function in a subssystem like DotNetNuke
    /// </summary>
    public interface IEmailProvider
    {
        /// <summary>
        /// Sends an email message
        /// </summary>
        /// <param name="msg">The mail message to send</param>
        void SendEmail(MailMessage msg);

        /// <summary>
        /// Sends an email message and adds the attachments separetedly from the message. Used by the dnn provider
        /// </summary>
        /// <param name="msg">The mail message to send</param>
        /// <param name="attachments">A list of files apths to attch to this message</param>
        void SendEmail(MailMessage msg, params string[] attachments);

    }
}
